#pragma once

#ifdef ANSI_DECLARATORS
#  define MESHFEM_PREVIOUSLY_DEFINED_ANSI_DECLARATORS ANSI_DECLARATORS
#  undef ANSI_DECLARATORS
#endif
#ifdef REAL
#  define MESHFEM_PREVIOUSLY_DEFINED_REAL REAL
#  undef REAL
#endif
#ifdef VOID
#  define MESHFEM_PREVIOUSLY_DEFINED_VOID VOID
#  undef VOID
#endif

#define ANSI_DECLARATORS
#define REAL double
#define VOID int

#define MESHFEM_REAL double
#define MESHFEM_VOID int

extern "C" {
#include <triangle.h>
}

#undef ANSI_DECLARATORS
#ifdef MESHFEM_PREVIOUSLY_DEFINED_ANSI_DECLARATORS
#  define ANSI_DECLARATORS MESHFEM_PREVIOUSLY_DEFINED_ANSI_DECLARATORS
#endif

#undef REAL
#ifdef MESHFEM_PREVIOUSLY_DEFINED_REAL
#  define REAL MESHFEM_PREVIOUSLY_DEFINED_REAL
#endif

#undef VOID
#ifdef MESHFEM_PREVIOUSLY_DEFINED_VOID
#  define VOID MESHFEM_PREVIOUSLY_DEFINED_VOID
#endif
